Subject: Re: Writing a StarField. Which method is best?
From: [email-masked] (Leo 'Bols Ewhac' Schwab)
Date: 23 Nov 92 23:50:00 GMT
Newsgroups: alt.sys.amiga.demos

In article <[email-masked]> [email-masked] (Lars Haugseth) writes:
>In article <[email-masked]>, [email-masked] (Leo 'Bols Ewhac' Schwab) writes:
>>>START	move.l	4.w,a6
>>>	move.l	156(a6),a1
>> 		^^^
>> 	Okay.  Why isn't this a symbolic offset?  That is, why didn't you
>> say:
>>
>> 	move.l	IntVects+6*IV_SIZE+IV_DATA(a6),a1
>
>Because demo-coders usually use a floppy-based system when writing
>programs, so it's a pain in the ass to use includes. Especially in
>routines like this where the includes are used in perhaps 10 lines
>of the source. I *don't* do like this when doing more "serious" stuff.
>
	Just a small historical note:  "Disney Presents: The Animation
Studio" was, for the first two years of its life, written on an A1000 with
512K chip, 2M fast, two floppies, a flakey 68020 card (no 32-bit RAM), and
VD0: (ASDG's recoverable RAM disk).  It was compiled with Manx 3.4b and all
the sources, includes and C: commands were held in RAM.  The thing finally
grew too big to fit in VD0:, and I graduated to a hard disk (my, that was
nice).

	I don't know what the typical demo coder's environment is, but I
can't imagine it being any worse than Lattice v1.0 on a 512K system (yes, I
lived with this; it was worse than you can possibly imagine).

>But would I manage that many stars if I should use the system-routines
>for everything? The whole point of my routine is to make it as
>fast as possible.
>
	For setting up the displays, you would need to call the dead-slow
system routines only once to build the display.  You would then call
LoadView() to bring displays to the front; LoadView() is an *extremely*
inexpensive routine.  If you prefer not to use LoadView(), you can just jam
COP1LC with the copperlist the system built.

	And by the way, with the advent of AGA and v3.0, you *no longer
know* how to build correct copperlists, since they now can be *monitor-
specific*.  The task of computing and assembling copper lists has been
largely removed from graphics.library and placed loadable code modules in
the v3.0 Monitors drawer.  (At least, this is how it was explained to me.)

	So it behooves you to use the system routines where possible.  I
mean, wouldn't it be cool to have your demo automatically show up on an
A4000 on a crisp multiscan monitor in scandoubled 60 Hz?

_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
Leo L. Schwab -- The Guy in The Cape                    [email-masked]
 \_ -_          Recumbent Bikes:                ..or..  [email-masked]
O----^o       The Only Way To Fly.                     (pronounced "EH-wack")
         "Because you never know who might want to sit in your lap."